home *** CD-ROM | disk | FTP | other *** search
/ MacWarehouse Macintosh Games / MacWarehouse Macintosh Games.iso / AMBER demo / ROXY / ROXY.dxr / 00002_custom domain rules.ls < prev    next >
Encoding:
Text File  |  1996-10-18  |  6.8 KB  |  203 lines

  1. on disablePeekAlert
  2.   global gPeekAlertEnabled
  3.   set gPeekAlertEnabled to 0
  4. end
  5.  
  6. on enablePeekAlert
  7.   global gPeekAlertEnabled
  8.   set gPeekAlertEnabled to 1
  9. end
  10.  
  11. on clearTheStage
  12.   global oPuppeteer
  13.   repeat with i = 1 to 43
  14.     puppetSprite(i, 0)
  15.   end repeat
  16.   updateStage()
  17. end
  18.  
  19. on setPKscanStatus suggestion
  20.   global oStoryteller, oPuppeteer, gScanFinish
  21.   set validList to [#Offline, #CantAttach, #Online, #NoResidue, #Wait5min, #Wait4min, #Wait3min, #Wait2min, #Wait1min, #ReadyForPlayback, #Interrupted, #Preamble]
  22.   if not getPos(validList, suggestion) then
  23.     alert("Can't set #PKscanStatus to " & suggestion)
  24.     exit
  25.   end if
  26.   set currentStatus to getState(oStoryteller, #PKscanStatus)
  27.   if suggestion = #Online then
  28.     if getPos([#Wait1min, #Wait2min, #Wait3min, #Wait4min, #Wait5min], currentStatus) then
  29.       set gScanFinish to 0
  30.       set suggestion to #Interrupted
  31.     end if
  32.     if currentStatus = #ReadyForPlayback then
  33.       set suggestion to #ReadyForPlayback
  34.     end if
  35.   end if
  36.   if suggestion = #Offline then
  37.     set gScanFinish to 0
  38.   end if
  39.   if currentStatus = #ReadyForPlayback then
  40.     if suggestion <> #ReadyForPlayback then
  41.       setState(oStoryteller, #PeekDisplay, #none)
  42.     end if
  43.     if getPos([#Wait5min, #Wait4min, #Wait3min, #Wait2min, #Wait1min], suggestion) then
  44.       setState(oStoryteller, #PeekDisplay, #goodScan5min)
  45.     else
  46.     end if
  47.   end if
  48.   setProp(the lsStateData of oStoryteller, #PKscanStatus, [suggestion])
  49.   if (suggestion = #Interrupted) and (getState(oStoryteller, #playerHasPeekUnit) = #carrying) then
  50.     setState(oStoryteller, #PeekDisplay, #interruptedScan)
  51.     peekAlert()
  52.   end if
  53.   if the castNum of sprite 41 = getAt(getProp(the lsMultiFrames of oPuppeteer, #scanIcon), 4) then
  54.     set the castNum of sprite 40 to getProp(getProp(the lsMultiFrames of oPuppeteer, #peekText), value("#scan" & suggestion))
  55.   end if
  56. end
  57.  
  58. on setPKbarStatus suggestion
  59.   global oStoryteller, oPuppeteer
  60.   set validList to [#Offline, #Online, #noActivity, #activityDetected]
  61.   if not getPos(validList, suggestion) then
  62.     alert("Can't set #PKbarStatus to " & suggestion)
  63.     exit
  64.   end if
  65.   setProp(the lsStateData of oStoryteller, #PKbarStatus, [suggestion])
  66.   if the castNum of sprite 42 = getAt(getProp(the lsMultiFrames of oPuppeteer, #barIcon), 4) then
  67.     set the castNum of sprite 40 to getProp(getProp(the lsMultiFrames of oPuppeteer, #peekText), value("#bar" & suggestion))
  68.   end if
  69. end
  70.  
  71. on setPKamberStatus suggestion
  72.   global oStoryteller, oPuppeteer
  73.   set validList to [#Incomplete, #Online, #WaveButIncomplete, #WaveActivated, #ModulatingEEG, #oneMoment, #surfsUp]
  74.   if not getPos(validList, suggestion) then
  75.     alert("Can't set #PKamberStatus to " & suggestion)
  76.     exit
  77.   end if
  78.   if suggestion = #Online then
  79.     if getState(oStoryteller, #psionicWavesPresent) then
  80.       set suggestion to #WaveActivated
  81.     else
  82.       set suggestion to #Online
  83.     end if
  84.   end if
  85.   if suggestion = #WaveActivated then
  86.     if getState(oStoryteller, #oscillatorInPlace) then
  87.       set suggestion to #WaveActivated
  88.     else
  89.       set suggestion to #WaveButIncomplete
  90.     end if
  91.   end if
  92.   setProp(the lsStateData of oStoryteller, #PKamberStatus, [suggestion])
  93.   if the castNum of sprite 43 = getAt(getProp(the lsMultiFrames of oPuppeteer, #amberIcon), 4) then
  94.     set the castNum of sprite 40 to getProp(getProp(the lsMultiFrames of oPuppeteer, #peekText), value("#amber" & suggestion))
  95.   end if
  96. end
  97.  
  98. on hideCursor
  99.   global thisCursor, lastCursor
  100.   set thisCursor to #noCursor
  101.   set lastCursor to thisCursor
  102.   cursorDance(0)
  103. end
  104.  
  105. on resetPeeKdisplay
  106.   global oPuppeteer, oStoryteller
  107.   set pkScanIcon to 41
  108.   set pkBarIcon to 42
  109.   set pkAmberIcon to 43
  110.   set camSprite to 44
  111.   set peekVideo to getProp(the lsForegroundData of oPuppeteer, #PkVideoNormal)
  112.   set the castNum of sprite camSprite to getProp(peekVideo, #PkNone)
  113.   set scanStatus to getState(oStoryteller, #PKscanStatus)
  114.   if (scanStatus <> #Offline) and (scanStatus <> #CantAttach) then
  115.     set the castNum of sprite pkScanIcon to getAt(getProp(the lsMultiFrames of oPuppeteer, #scanIcon), 3)
  116.   else
  117.     set the castNum of sprite pkScanIcon to getAt(getProp(the lsMultiFrames of oPuppeteer, #scanIcon), 2)
  118.   end if
  119.   if getState(oStoryteller, #BarOnline) = 1 then
  120.     set the castNum of sprite pkBarIcon to getAt(getProp(the lsMultiFrames of oPuppeteer, #barIcon), 3)
  121.   else
  122.     set the castNum of sprite pkBarIcon to getAt(getProp(the lsMultiFrames of oPuppeteer, #barIcon), 2)
  123.   end if
  124.   if getState(oStoryteller, #AMBERisOnline) = 1 then
  125.     set the castNum of sprite pkAmberIcon to getAt(getProp(the lsMultiFrames of oPuppeteer, #amberIcon), 3)
  126.   else
  127.     set the castNum of sprite pkAmberIcon to getAt(getProp(the lsMultiFrames of oPuppeteer, #amberIcon), 2)
  128.   end if
  129.   updateStage()
  130. end
  131.  
  132. on buildDefaultPlaylist
  133.   global gPeekPlayList
  134.   set currentLoc to string(getState(oStoryteller, #currentLocation))
  135.   set whichRoom to getLocationPointer(oPuppeteer, currentLoc, #sublist)
  136.   set gPeekPlayList to [#PkFadeIn, #PkFadeOut]
  137.   if whichRoom <> #office then
  138.     addAt(gPeekPlayList, 2, #PkOffice)
  139.   end if
  140.   if whichRoom <> #Marg then
  141.     addAt(gPeekPlayList, 2, #Pk40s)
  142.   end if
  143.   if whichRoom <> #MBR then
  144.     addAt(gPeekPlayList, 2, #PkMBR)
  145.   end if
  146.   if whichRoom <> #kitchen then
  147.     addAt(gPeekPlayList, 2, #PkKitchen)
  148.   end if
  149.   if whichRoom <> #diningRm then
  150.     addAt(gPeekPlayList, 2, #PkDiningRm)
  151.   end if
  152.   if whichRoom <> #livingRm then
  153.     addAt(gPeekPlayList, 2, #PkLivingRm)
  154.   end if
  155.   if whichRoom <> #study then
  156.     addAt(gPeekPlayList, 2, #PkStudy)
  157.   end if
  158. end
  159.  
  160. on pyramidSpeaks
  161.   global oPuppeteer, oStoryteller
  162.   cursorOff()
  163.   set remainingMessages to getProp(the lsStateData of oStoryteller, #pyramidMessagesRemaining)
  164.   set messagesStack to getProp(the lsMultiFrames of oPuppeteer, #PyramidMsg)
  165.   if count(remainingMessages) > 0 then
  166.     set helpTest to getAt(remainingMessages, 1)
  167.     if helpTest = #helpMe then
  168.       set myAnswer to 6
  169.       deleteAt(remainingMessages, 1)
  170.     else
  171.       set msgPosition to random(count(remainingMessages))
  172.       set myAnswer to getAt(remainingMessages, msgPosition)
  173.       deleteAt(remainingMessages, msgPosition)
  174.       if count(remainingMessages) = 0 then
  175.         append(remainingMessages, #helpMe)
  176.       end if
  177.     end if
  178.   else
  179.     set myAnswer to random(5)
  180.     if myAnswer = 5 then
  181.       if random(3) = 3 then
  182.         set myAnswer to 6
  183.       end if
  184.     end if
  185.   end if
  186.   set msgSprite to #none
  187.   repeat with i = 10 to 48
  188.     if getPos(messagesStack, the castNum of sprite i) then
  189.       set msgSprite to i
  190.       exit repeat
  191.     end if
  192.   end repeat
  193.   if msgSprite = #none then
  194.     alert("pyramidSpeaks: Yikes.. Couldn't find the message-sprite")
  195.     exit
  196.   end if
  197.   set the castNum of sprite msgSprite to getAt(messagesStack, myAnswer + 1)
  198.   do("puppetTransition " & getProp(getProp(the lsMachineProfile of oPuppeteer, #transitions), #fadeIn))
  199.   soundEffect(#pyramidGurgle)
  200.   wait(25)
  201.   updateStage()
  202. end
  203.